日历
Scripting 应用中的 Calendar API 提供了与 iOS 日历账户、日历对象、事件和提醒事项交互的能力。
开发者可以通过此 API 获取默认日历、创建新的日历、列出支持特定实体类型(日程、提醒)的日历,以及管理日历属性。
类型定义
CalendarType
定义日历的种类:
CalendarSourceType
定义日历账户源的种类:
CalendarEventAvailability
定义事件的可用性状态:
CalendarEntityType
定义日历中可管理的实体类型:
类:CalendarSource
代表一个日历账户源,例如本地账户、Exchange账户等。
属性
方法
getCalendars(entityType: CalendarEntityType): Promise<Calendar[]>
获取该账户下指定实体类型(事件或提醒事项)支持的所有日历。
- 参数
entityType: CalendarEntityType— 需要获取的日历实体类型。
- 返回
Promise<Calendar[]>— 日历对象数组。
类:Calendar
代表一个具体的日历对象,可用于管理日程、提醒事项等。
属性
方法
remove(): Promise<void>
删除该日历。
save(): Promise<void>
保存对该日历的更改。
static defaultForEvents(): Promise<Calendar | null>
获取当前系统设置的默认事件日历。
static defaultForReminders(): Promise<Calendar | null>
获取当前系统设置的默认提醒事项日历。
static forEvents(): Promise<Calendar[]>
列出所有支持事件的日历。
static forReminders(): Promise<Calendar[]>
列出所有支持提醒事项的日历。
static create(options: { title: string, entityType: CalendarEntityType, sourceType: CalendarSourceType, color?: Color }): Promise<Calendar>
创建一个新的日历。
- 参数
title: string— 新日历的标题entityType: CalendarEntityType— 支持的实体类型sourceType: CalendarSourceType— 日历账户源类型color?: Color— (可选)日历颜色
- 返回
Promise<Calendar>— 新创建的日历对象。
static presentChooser(allowMultipleSelection?: boolean): Promise<Calendar[]>
展示一个日历选择器界面,供用户选择一个或多个日历。
- 参数
allowMultipleSelection?: boolean— 是否允许多选,默认false。
- 返回
Promise<Calendar[]>— 用户选择的日历列表。
static getSources(): CalendarSource[]
获取当前设备上所有的日历账户源。
